home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga CD-Sensation: Golden Games
/
Amiga CD-Sensation - Ausgabe 2 - Golden Games (1996)(GTI - Schatztruhe)(DE)[!].iso
/
Brain Activity
/
MineSweeper
/
MineSweeper.doc
< prev
next >
Wrap
Text File
|
1994-03-09
|
13KB
|
390 lines
About MineSweeper 2.7
---------------------
This version of MineSweeper was written in Modula2 by myself,
John Matthews, to be as close as possible to the version that
comes with Microsoft Windows 3.1 (tm), without being based at
all on either the source or object code of that version.
This version of MineSweeper, is public domain. Feel free to
give it away, or upload it to your favourite FTP site or BBS,
but please don't modify it. If you want the source, let me know.
This program looks best on WB2.0 or higher, on a deinterlaced,
or dblscan workbench, but should work on earlier, lower resolution
displays also. Lower resolutions will limit the size of the custom
option however.
MineSweeper is one of those games which are simple in concept,
while surprisingly absorbing and addictive to play.
Minesweeper is a challenging game of strategy and luck. Here
follow some instructions on how to play.
Copyright
---------
This version of MineSweeper is copyright 1992-1993 John Matthews,
and is totally freeware. Distribute it as you like but leave the
documentation intact, and don't modify the program itself. And
please do not sell it for profit, or as part of another product.
History
-------
Version 2.0 - June 1992 (I think).
First Release
Version 2.1 - April 6 1993.
Bug Fix :
Enforcer hits at startup, font colour.
Version 2.2 - September 10 1993.
Bug Fixes :
Window refreshing after obscure, while high score window up.
Handles right mouse button better now
- now works with popup menu programs,
like Magic Menu (© Martin Korndörfer)
Modified operation a little
(if you can't figure out how to use it,
you won't be any good at the game :-) )
Added Custom mode.
Version 2.3 - September 22 1993
Bug Fix :
hashing of display during right mouse button moves on
non interlaced displays.
Enhancements :
optimised search routines into assembly language for greater speed
flashes display at end of game
changed "Shrink Window" to "Pause", doesn't reset game.
added keyboard equivalents
changed from stack search to queue search
(ripple out after uncovering instead of diagonal paths :-) )
Version 2.4 - September 28 1993
I was in town on Thursday, uploading the new version, and I read my mail.
So here are the improvements that were requested.
1. Sun-Glasses on successful game :-) (Ingimar Robertsson)
2. Different methods for Game-Over test
- All the mines found
- All the spaces not containing mines uncovered
- Both of the above
(Ingimar Robertsson)
I felt the choice was necessary, as the purpose of a Minesweeper
should be to Find all the mines, not all the safe locations.
Really, to make this more interesting, there should be an
option of a random number of mines, undisclosed.
Maybe later...
3. Colour coding of numbers.
This feature is only available under Version 39 or greater
of the OS (Kickstart 3)
(Hannes Gnad)
4. Previously, the upper left square never contained a mine.
Now, whatever square you first uncover will have no mine in it.
(Ingimar Robertsson)
Version 2.5 - December 13 1993
A few modifications made on request, and one minor bug fix.
1. Apparently, faulty mice (ie any that came with an Amiga since
the Amiga 1000, the best quality machine) make it difficult
to use the 'mobile cursor', or release over the desired
square technique.
At the request of Jonas Peterrson (and wife), this is now switchable.
The setting is remembered between games ;-)
2. In the continuing quest to make my version as similar to that
other version as practical, and desirable, and to make the above
option safer, at the suggestion (again) of Jonas Peterrson (and wife),
clicking the other mouse button during an operation, aborts.
3. The clock no longer restarts after the sequence:
game over, shrink, unshrink
(Steven Kuck)
4. Released the source, that is to say the main program file.
This file is over 3000 lines of messy code. Over the year and
a half or so that I have worked, off and on, on MineSweeper,
there is little that hasn't been changed to improve the game
technique, look and feel, smoothness of display, and speed.
Not to mention suggestions.
The code is not pretty, and the purpose of much of it will seem
obscure. The most obscure parts are those dealing with the
inadequacies of my compiler to modern Amiga programming, and
attempts to provide a 2.0+ look and feel even under 1.3.
Also the optimisations 'occasionally' cause a mess.
I don't include the full source, as what is missing would only be
useful to someone with M2Sprint Modula-2, and even then most of my
libraries have been modified.
Version 2.6 8 February 1994
Minor Bug Fix, option change.
1. Releasing RMB, in 'mark guess' mode over uncovered square, caused
garbage squares down left edge. (Ingimar Robertsson)
2. Made 'safe' behavior of guessed squares optional. (Ingimar Robertsson)
3. (Hopefully) Fixed bugs with colours not being freed on EXIT.
Version 2.7 8 March 1994
Fixed the bugs introduced in 2.6 :-)
Mines can now be marked down the left column
MututalExclude code in Static/Mobile sub menus fixed
Documentation now up-to-date.
Coloured numbers now working correctly (3.0 only function)
Bugs
----
None that I know of. ;-)
Author
------
John Matthews
tribble@gphs.vuw.ac.nz
Contents for Minesweeper Instructions
I.____Introduction: What Is Minesweeper?
II.____How to ... Keep Score
III.____How to ... Mark a Square
IV.____How to ... Play the Game
V.____How to ... Understand the Rules of the Game
VI.____Use Strategies and Hints
Part I
------
>> Introduction : What Is Minesweeper?
-----------------------------------
When playing Minesweeper you are presented with a mine field, and your
objective is to locate all the mines as quickly as possible.
To locate the mines, you uncover the squares on the game board
that do not contain mines, and you mark the squares that do contain mines.
The trick is determining which squares are which.
If you uncover all the squares without mines, and mark all those with,
you win; if you uncover a mine instead of marking it, you lose the game.
The faster you play, the lower your score.
You can use the counters at the top of the window to keep
track of your progress.
The counter in the upper-right corner of the window is a timer,
which displays your playing time in seconds. The timer does
not begin counting until you select a square.
The counter in the upper-left corner of the window initially
indicates the number of mines hidden in the mine field. Every time
you mark a square as a mine, this number decreases by one,
even if you incorrectly mark a square.
Part II
-------
>> Keeping Score
-------------
Minesweeper scoring is simple. The counter in the upper-right corner
of the playing area indicates your playing time. The faster you find
all the mines, the better your score.
To see a list of your fastest playing times
From the Game menu, choose Best Times.
Part III
--------
>> Marking a Square
----------------
Knowing when to mark a square as a mine is the key to winning
the game.
To uncover a square ...
Point to the square, and click the left mouse button.
To mark a square as a mine ...
Point to the square, and click the right mouse button once.
To mark a square as a question mark ...
Point to the square, and click the right mouse button twice.
To change a square marked as a mine into a question mark ...
Point to the square, and click the right mouse button once.
To clear a square marked as a mine ...
Point to the square, and click the right mouse button twice.
Once you have marked at least one square as a mine, you may be able to
safely uncover more squares by "clearing around" them.
To uncover all the squares around an uncovered square ...
Click the right mouse button over that square.
Instead of just clicking on a square, you can click-drag across the
board until you reach your desired square and then release.
In the case of the right mouse button, the effect of drag clicking
depends on the square you clicked on, not the one you released over.
For instance, clicking the right mouse button down over a covered
square and (before releasing the button) moving the mouse will
result in attempting to mark the square you release over as a mine.
Clicking the right mouse button down over an uncovered square and
dragging will result in attempting to uncover all the squares
around the square.
In each of these two cases, releasing over a square of the opposite
type (covered/uncovered) will have no effect.
Part IV
-------
>> Playing the Game
The object of Minesweeper is to correctly mark all mines as
quickly as possible without uncovering one. The following
section explains how to play the game.
To choose a skill level
From the Game menu, choose Beginner, Intermediate, or
Expert. The higher the skill level, the larger the mine field.
To start a new game
From the Game menu, choose New, or use Right-Amiga-N. Or you
can click the yellow "happy face" at the top of the game board.
To locate the mines
1. To uncover a square, select it using the left mouse button.
If the square is a mine, you lose.
2. If the square isn't a mine, a number may appear. This number
represents the number of mines in the surrounding eight squares.
If there are no mines around the square, it will show blank,
and all the squares around it will automatically be uncovered.
This process is recursive, and can result in large areas of the
board being uncovered.
3. To mark a square as a mine, select it with the right mouse button.
To mark a square you are uncertain about, point to it and click
twice with the right mouse button. This marks the square with a
question mark (?). Later, you can either mark the square as a mine, or
uncover it.
Part V
------
>> Understanding the Rules of the Game
-----------------------------------
Follow these rules when playing Minesweeper
The playing area is a mine field, simulated by a grid of squares.
Initially, all the squares are covered.
To uncover a square, point to it and click the left mouse button. You
continue to uncover squares until only the squares containing mines
are covered.
If you uncover a square that does not contain a mine, it either
contains a number or is blank.
If the square contains a number, N, then there are N mines in the
surrounding eight squares. If the square is blank, there are no mines
in the surrounding eight squares.
If you uncover a blank square, the surrounding eight squares are
uncovered automatically because there cannot be any mines under them.
If you know that a square is a mine, you can mark the square.
If you uncover a square that contains a mine, the game is over and all
the mines are displayed.
You can also "clear around" an uncovered number square whose mine has
already been marked. For example, two squares labeled 1 may both be
touching a marked square. If you clear around the uncovered squares,
you may uncover additional squares that do not contain mines. If you
clear around a square whose mine is already marked, the surrounding
numbered squares are uncovered.
To clear around a square ...
Point to the numbered square, and then click the right mouse button.
You are not allowed to clear around a square if you have not marked
enough mines, or have marked to many mines, in the surrounding eight
squares, or if the square is covered.
For example, if you try to clear around a square labeled 3, and you
have marked only two squares with mines, nothing will happen.
Or, if you try to clear around an uncovered square, nothing will
happen.
If you clear around a square, and there is an unmarked mine in the
surrounding eight squares, it is uncovered and the game is over.
If you clear around a square whose mines are incorrectly marked and a
mine is uncovered, the game is over.
Part VI.
--------
>> Using Strategies and Hints
--------------------------
Helpful hints for playing Minesweeper
If an uncovered square is labeled 1, and there is only one covered
square touching it, that covered square must be a mine.
If an uncovered square already has the correct number of adjacent
mines marked, clear around it.
Don't guess unless you have to. If you can't figure out how to move,
try approaching the area from a different direction or marking
squares with question marks.
Guessing may occasionally finish the game more quickly by opening
out the board, but it defeats the purpose of skill.